/*
7-198 复数乘法
分数 150
作者 马俊
单位 兰州大学

复数是数的概念扩展，我们把形如 z=a+bi(a,b∈R) 的数称为复数。其中，a 称为实部，b 称为虚部，i 称为虚数单位。

根据定义，上述 i2=−1。

两个复数的乘法遵循下面的等式：

(a+bi)(c+di)=ac+(ad)i+(bc)i+(bd)i^2

现给定两个复数，要求输出它们的乘积（按照 a+bi 的格式，若 b 为负数，则输出 a−∣b∣i）。
输入格式:

第一行，两个用空格分开的整数 a,b(1≤a,b≤10^7)，分别代表题目中描述的第一个复数的实部和虚部；

第二行，两个用空格分开的整数 c,d(1≤c,d≤10^7)，分别代表题目中描述的第二个复数的实部和虚部
输出格式:

一行，一个复数，按照 a+bi 的格式输出，若 b 为负数，则输出 a−∣b∣i，代表输入的两个复数的乘积
输入样例1:

1 1
1 -1

输出样例1:

2+0i

输入样例2:

1 -1
1 -1

输出样例2:

0-2i

输入样例2:

-1 1
1 -2

输出样例2:

1+3i
*/

#include <stdio.h>

int main() {
    long long a, b, c, d;
    scanf("%lld %lld", &a, &b);
    scanf("%lld %lld", &c, &d);
    long long real = a * c - b * d;
    long long imag = a * d + b * c;
    if (imag < 0) {
        printf("%lld%lldi\n", real, imag);
    } else {
        printf("%lld+%lldi\n", real, imag);
    }
    return 0;
}